from Business.listen_folder import  ImageHandler
from Observer.subject import ImageObserver

if __name__ == "__main__":
    image_observer = ImageObserver()
    # 构造一个监听对象，并设置监听的目录
    image_handler = ImageHandler(r"C:\Users\admin\Desktop\collecter")
    # 注册一个观察者
    image_handler.register_observer(image_observer)
    # 调用一下image_observer的piclist
    image_handler.run()
    # 调用了run方法后，会一直在run方法的循环里，不会直接执行下面的语句


# 主程序入口
# if __name__ == "__main__":
#     # 替换为你要监控的文件夹路径
#     path_to_watch = r"C:\Users\admin\Desktop\collecter"

#     # 创建一个ImageHandler对象，用于处理文件系统事件
#     event_handler = ImageHandler()

#     # 创建一个Observer对象，用于观察文件系统事件
#     observer = Observer()

#     # 将event_handler注册到observer，并指定要监控的文件夹路径和是否递归监控子文件夹
#     # 这里我们设置为不递归监控子文件夹
#     observer.schedule(event_handler, path_to_watch, recursive=False)

#     # 开始观察文件系统事件
#     observer.start()

#     try:
#         # 循环等待，直到用户按下Ctrl+C（触发KeyboardInterrupt异常）
#         while True:
#             time.sleep(1)  # 休眠1秒，避免程序过快退出
#     except KeyboardInterrupt:
#         # 用户按下Ctrl+C，停止观察文件系统事件
#         observer.stop()

#     # 等待observer的所有事件处理器完成处理
#     observer.join()
#     print(file_name)
